1. Field of the Invention
The present invention relates generally to a difference updating method, program and apparatus for updating data of a file to be rewritten, by receiving difference data generated from two (2), old and new files, and more particularly to a difference updating method, program and apparatus for resuming a data updating process from the middle of the process after recovery of power supply interrupted during updating of the data.
2. Description of the Related Arts
Conventionally, embedded systems such as portable terminals have limitation, such as that speed of communication with outside is low, and available work memory is small. In this environment, in order to update software stored in internal memory in a short period of time, a difference updating method utilizing old and new difference data of software is available.
When software stored in built-in memory of the embedded system is updated by the use of the difference updating method, if the amount of data to be updated is high, size of th difference data becomes large and can not be contained in available memory of the embedded system.
In this case, the entire data to be written (software) will be divided into several segments, and the updating process is executed to each one. Flow of the updating process in this case is as follows.
S1: The difference data for updating one (1) segment of the data to be written is transferred from outside and received.
S2: New one (1) segment of new data is generated from one (1) segment of the data to be written corresponding to the received one (1) segment of the difference data.
S3: The generated one (1) segment of new data is overwritten onto one segment of the data to be written.
However, in this difference updating process, when power supply to a cell phone is turned off in the middle of a process which overwrites new data generated for each segment from the difference data onto the data to be written, if it is attempted to resume the difference updating process after power supply is recovered, since the rewrite target terminal is in the state that it is rewritten partway, and data to be referenced by the difference data is lost, the updating process can not be continued.
Also, one (1) segment of new data which was generated when power supply was interrupted is lost by the power interruption, and it is not possible to reattempt overwriting of the corresponding data to be written with the resuming process according to power recovery.
Therefore, if power supply is interrupted during an overwriting process of data, it is needed to have the updated data itself transferred in order to complete the update, and if the updated data itself is received, since the amount thereof will be much larger size than the difference data, it is imperative to increase time of the updating process.